Skip to content

Adding GUI System Tests - #249

Open
MikeSullivan7 wants to merge 9 commits into
RascalSoftware:mainfrom
MikeSullivan7:gui_system_tests
Open

Adding GUI System Tests#249
MikeSullivan7 wants to merge 9 commits into
RascalSoftware:mainfrom
MikeSullivan7:gui_system_tests

Conversation

@MikeSullivan7

@MikeSullivan7 MikeSullivan7 commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

This PR introduces a new form of GUI System Test which creates an instance of RasCal2, performs a sequence of events (clicks, typing, etc) and tests the validity of the output. This is more useful than isolated unit tests as it tests theinteraction between different parts of the program and more closely resembles a realistic user workflow.

System tests inherit the GuiSystemBase class, which handles the setUp and tearDownof theself.main_window` instance, simplifying how the tests are written.

Unit tests and System tests are differentiated in pytest. We can run only unit tests via:
pytest tests or pytest tests --run-unit-tests

System tests are run with the window hidden by default and can be ran via:
pytests tests --run-system-tests
to show the window while tests are running:
pytests tests --run-system-tests-show

If we want to include screenshot/eyes tests in the future, a flag can be created for them to differentiate screenshot tests from unit and system tests.

@MikeSullivan7
MikeSullivan7 marked this pull request as ready for review August 21, 2026 17:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant